CoboCards App FAQ & Wünsche Feedback
Sprache: Deutsch Sprache
Kostenlos registrieren  Login

Hol' Dir diese Lernkarten, lerne & bestehe Prüfungen. Kostenlos! Auch auf iPhone/Android!

E-Mail eingeben: und Kartensatz kostenlos importieren.  
Und Los!
Alle Oberthemen / Informatik / Java

Java (135 Karten)

Sag Danke
104
Kartenlink
0
Was sind Super- und Subklassen?
Generalisierende, allgemeinere Klasse heißt Superklasse
- enthält alle gemeinsamen Attribute

untergeordnete Klasse heißt Subklasse
- enthält nur individuelle Attribute und Methoden



Pfeil kann als "ist-ein"-Beziehung gelesen werden
Tags: Generalisierung und Vererbung, VL 07
Quelle:
105
Kartenlink
0
Wozu nutzen wir Generalisierungen?
Bilden gemeinsamer Schnittstellen

Effizienz
Gemeinsame Attribute und Methoden nicht mehrfach implementiert

hierarchische Struktur sorgt für mehr Übersicht

Lesbarkeit
trotz Auslagerung von Codeteilen in Superlassen ist Verteilung durch klare Beziehungen nachvollziehbar

Struktur erweiterbar:
neue Klassen können einfach eingegliedert werden
Tags: Generalisierung und Vererbung, VL 07
Quelle:
107
Kartenlink
0
Was ist Vererbung und welche Arten gibt es?
Weitergabe von Daten, Verhalten und Benutzbarkeit einer Superklasse an Subklasse

in OOP zwei Arten von Vererbung
  °Implementierungsvererbung (-> Daten und Verhalten)
  °Schnittstellenvererbung (-> Benutzbarkeit)

in Java zwei Arten von Vererbung
- Schlüsselwort extends => alles wird vererbt
  ° Daten
  ° Verhalten
  ° Benutzbarkeit

- Schlüsselwort implements
=> lediglich Schnittstellenvererbung
Tags: Generalisierung und Vererbung, VL 07
Quelle:
108
Kartenlink
0
Wie funktioniert die Vererbung mit "extends"?
Subklasse erbt konkrete Implementierung der Superklasse

bindet Klassen dicht aneinander
- Änderung der Superklasse wirkt sich auf alle Subklassen aus
- Erweiterung der Superklasse muss für alle Subklassen auch gültig sein

Jede Klasse hat maximal eine Superklasse (Einfachvererbung), kann aber beliebig viele Subklassen haben


Syntax
Neu deklarierte Klasse erweitert durch Schlüsselwort extends andere Klassen und erbt von ihr

vererbte Eigenschafte müssen nicht neu deklariert werden


Beispiel
public class Banane extends Obst{
     //...
}
Tags: Generalisierung und Vererbung, VL 07
Quelle:
109
Kartenlink
0
Was wird mit extends vererbt? Gibt die verschiedenen Sichtbarkeiten an!
Subklasse hat Zugriff auf alle öffentlichen und geschützten Member

Private und package-private (default) sind nicht aufgreifbar

Tags: Generalisierung und Vererbung, VL 07
Quelle:
110
Kartenlink
0
Was ist die Klasse "Object" ?
der "big Daddy "

implizite Basisklasse aller Klassen in Java

ohne extends-Anweisung*+ hinter Klassenname erbt Klasse automatisch von Object

alle Klassen ** haben  - direkt oder indirekt - Object als Basisklasse
- erben Reihe von Methoden, u.a toString()


Beispiel

public class Lebensmittel {
    // Klasse erbt von Object, da keine explizite extends-Anweisung
}
Tags: Generalisierung und Vererbung, VL 07
Quelle:
111
Kartenlink
0
Was sind Superkonstruktoren ?
Bei Objekterzeugung zunächst von oben nach unten ausgeführt
- notwendig, um alle Eigenschaften (auch die geerbten) zu initialisieren



Auch parametrisierte Konstruktoren rufen Standard-Konstruktor der Superklasse auf.

Wenn Superklasse keinen Standard-Konstruktor hat, muss expliziter Aufruf erfolgen

public class Obst {
     ....
           public Obst(Color farbe, boolean istReif) {
              
...
           }
}


public class Apfel extends Obst {
     //...
          public  Apfel(boolean hatWurm) {
               super(Color.green, true);
          }
}
Tags: Generalisierung und Vererbung, VL 07
Quelle:
112
Kartenlink
0
Was sind Finale Klassen ?
Um Vererbung zu verhindern hat Java Schlüsselwort final

Manche Klassen sollten vor Vererbung geschützt werden

Syntax:

public final class SecuritySystem{
}
Tags: Generalisierung und Vererbung, VL 07
Quelle:
113
Kartenlink
0
Was sind die Vorteile der Implementierungsvererbung?
Gemeinsame Eigenschaften müssen nur einmal modelliert werden
-> Wiederverwendbarkeirt

erleichert Fehlersuche und -korrektur - > kann zentral durchgeführt werden

reduziert Programmieraufwand und Coderedundanz
Tags: Generalisierung und Vererbung, VL 07
Quelle:
114
Kartenlink
0
Welche Nachteile hat die Implementierungsvererbung?
kein Allheilnittel
- wahre Welt nicht immer hierarchisch
- Vererbung oft inflationär eingesetzt

starke Kopplung zwischen Super- und Subklassen
- Änderung an Super- wirkt sich auf Subklasse aus
- auch über viele Ebenen hinweg

viel Fehlerpotential
- falscher Featureeinsatz
- kaum Schutz vor Fehlverwendung
Tags: Generalisierung und Vererbung, VL 07
Quelle:
115
Kartenlink
0
Was sind abstrakte Klassen und welche Eigenschaften haben sie?
Generalisierungen führen oft zu Klassen, die nie selbst initialisiert werden.

Schlüsselwort abstract verhindert Initialisierbarkeit
- können nicht mit new erzeugt werden

Abstrakte Klassen
- können nicht erzeugt werden
- können abstrakte Methoden beinhalten
- können konkrete Methoden beinhalten

Abstrakte Methoden
- haben keinen Rumpf
- müssen in Subklasse implementiert werden
- spielen bei Polymorphismus noch eine große Rolle
- können nicht in konkreten Klassen definiert werden
Tags: Generalisierung und Vererbung, VL 07
Quelle:
Kartensatzinfo:
Autor: P-H-I-L
Oberthema: Informatik
Thema: Java
Veröffentlicht: 13.04.2010
 
Schlagwörter Karten:
Alle Karten (135)
Einführung in die OOP (13)
Felder (6)
Generalisierung und Vererbung (11)
Interfaces und Polymorphismus (20)
Programmelemente (26)
Terminologie (8)
VL 03 Kontrollstrukturen (9)
VL 03 Kontrollstrukturen S. 5 (1)
VL 05 (15)
VL 06 Einführung in die OOP (2)
VL 07 (11)
VL 09 GUI Event-Handling (6)
VL Programmelemente (2)
VL03 Kontrollstrukturen (1)
VL04 (6)
VL08 (20)
VL09 GUI (2)
Missbrauch melden

Abbrechen
E-Mail

Passwort

Login    

Passwort vergessen?
Deutsch  English